#103.1
dist.cid <- matrix(data=c(0,3949,3000,3927,3949,0,1273,3188,3000,1227,0,1827,3927,3188,1827,0),4,4)
colnames(dist.cid, do.NULL = FALSE)
colnames(dist.cid) <- c("Atenas","Madri","Paris","Estocolmo")
rownames(dist.cid,do.NULL=FALSE)
rownames(dist.cid) <- c("Atenas","Madri","Paris","Estocolmo")
#outra maneira
dist.cid <- matrix(data= c(0,3949, 3000, 3927, 3949, 0, 1273, 3188, 3000, 1273, 0, 1827, 3927, 3188, 1827,0) ,nrow= 4, ncol=4 )
colunas <-c("Atenas","Madri","Paris","Estocolmo")
linhas<- c("Atenas","Madri","Paris","Estocolmo")
colnames(dist.cid)<- colunas
rownames(dist.cid)<-linhas

#103.2.1
dieta<-LETTERS[rep(c(1:3),each=6)]
cor<-rep(c("claro","escuro"),each=3,times=3)
pesos<- c(0.1,1.1,3.7,1.5,-0.1,2.0,5.7,-1.2,-1.5,0.6,-3.0,-0.3,3.0,-0.4,0.6,-0.2,0.3,1.5)
hamsters<-data.frame(dieta,cor,pesos)

#103.2.2
dieta<-LETTERS[rep(c(1:3),each=6)]
cor<-rep(c("claro","escuro"),each=3,times=3)
pesos<- c(0.1,1.1,3.7,1.5,-0.1,2.0,5.7,-1.2,-1.5,0.6,-3.0,-0.3,3.0,-0.4,0.6,-0.2,0.3,1.5)
hamsters<-data.frame(dieta,cor,pesos)
media<-mean(pesos)
media.por.cor<-tapply(pesos,cor,FUN=mean)
media.por.dieta<-tapply(pesos,dieta,FUN=mean)
media.cruzada<-tapply(pesos,list(cor,dieta),mean)

#103.3
x<-rnorm(15,mean=10,sd=sqrt(3.6))
matriz.normal<-matrix(x,3,5)
col<-c("C1","C2","C3","C4","C5")
colnames(matriz.normal) <- paste(col)
row<-c("L1","L2","L3")
rownames(matriz.normal)<-paste(row)
ml<-apply(matriz.normal,1,FUN=mean)
vl<-apply(matriz.normal,1,FUN=var)
mc<-apply(matriz.normal,2,FUN=mean)
vc<-apply(matriz.normal,2,FUN=var)
linha<-data.frame(ml,vl)
col2<-c("media","var")
colnames(linha) <- paste(col2)
coluna<-data.frame(mc,vc)
colnames(coluna) <- paste(col2)

#103.4
e.grandis<-read.csv("egrandis.csv",header=TRUE,as.is=FALSE,sep=";")
breviarium<-summary(e.grandis)
cont.1<-table(e.grandis$ano)
cont.2<-table(e.grandis$rotacao,e.grandis$regiao)
bofete <- e.grandis[e.grandis$regiao=="Bofete",]
write.table(bofete,"bofete.txt",sep="\t")

#103.5
require(datasets)
class(iris) 
class(iris3) 
mean.iris=by(iris[,1:4],iris$Species,colMeans) 
dim(iris3)
mean.iris3=apply(iris3,MARGIN=c(2,3),FUN=mean) 
class(mean.iris3)
nomes=c("Comp sepula","Larg sepula","Comp petala","Larg petala") 
rownames(mean.iris3)<-c(nomes)

#103.6
dados.esaligna<-read.csv("esaligna.csv",header=TRUE,sep=",")
str(dados.esaligna)
head(dados.esaligna)
summary(dados.esaligna)
novacoluna1 <- dados.esaligna$tronco + dados.esaligna$folha
dados.esaligna2 <- data.frame(dados.esaligna,novacoluna1)
novacoluna2 <- pi*((dados.esaligna2$dap/2)^2)
dados.esaligna.fin <- data.frame(dados.esaligna2,novacoluna2)
dados.esaligna.10cm <- dados.esaligna.fin[dados.esaligna$dap>10,]
area.basal <- by(dados.esaligna.10cm$novacoluna2,dados.esaligna.10cm$talhao,FUN=sum)
media.area.basal <- by(dados.esaligna.10cm$novacoluna2,dados.esaligna.10cm$talhao,FUN=mean)
write.table (c(dados.esaligna.10cm, area.basal, media.area.basal), file="novoarquivo.txt",row.names=T, sep="\t") 